package de.openkanban.server.dao;

import de.openkanban.server.domain.User;
import de.openkanban.shared.util.StatusCodes;

/**
 * user data access object api
 */
public interface UserDao {
	boolean authentificate(User user);

	String test();

	User createUser(User user);

	User getUser(Long id);

	User getUser(String eMail);

	StatusCodes updateUser(User user);

	StatusCodes addContact(String parentUserId, String eMail);

	StatusCodes removeContact(User user, String eMail);

	User[] getContacts(Long userId);

}
